This invention relates to error correction in data systems and in particular to forward error correction by redundant transmission and encoding without adding non-information digits.
There are fundamentally two different techniques for improving the reliability of point-to-point binary data communication systems. One is commonly called Automatic-Repeat-Request (ARQ) and is characterized by the fact that the detection of errors in a transmitted block code initiates a request for re-transmission. A block code consists essentially of a group of information bits, buffered from adjacent groups, to which control and synchronization bits are attached. Such a combination forms a data block. The data block is then passed through an encoder which attaches a number of parity bits, resulting in the formation of the block code. These parity bits are used to determine if errors have been introduced in transmission. If no errors are detected, the group of information bits is delivered to the data destination and the receiving terminal notifies the sending terminal, through a suitable return channel, that the block has been correctly received. If discrepancies exist, the sending terminal is so notified and the block is re-transmitted. This assumes, of course, that the block is stored at the sending terminal until the acknowledgement or re-transmission request is received. Thus storage at the transmitting end as well as the receiving end is required.
The other fundamental technique for improving the reliability of point-to-point binary communication systems employs what is called Forward Error Control. Rather than to re-transmit blocks of the information when errors are detected, the decoder or associated equipment attempts to determine the location of errors from the pattern of discrepancies between the received and recalculated error bits. In prior-art systems, block codes are employed as are described for the ARQ technique previously described. In the instant invention, block codes are not employed and the location of the errors is derived from the encoding process and comparisons between the redundant transmission paths. Further, non-information carrying bits are not required.